home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1996 March / Amiga-CD 1996 #3.iso / pd-software / mui_3.1 / install / install-mui < prev    next >
Text File  |  1996-01-19  |  16KB  |  692 lines

  1. ; $VER: Install-MUI 3.0 (05.10.95)
  2. ; Script to install MagicUserInterface Release 3
  3.  
  4. (complete 0)
  5.  
  6.  
  7.  
  8. ;=============================================================================
  9. ; German strings
  10.  
  11. (if (= @language "deutsch")
  12. (
  13.  
  14. (set #intro
  15. (cat "Mit diesem Programm wird Version 3 von MagicUserInterface im "
  16.         "System installiert. Bereits vorhandene Versionen von MUI werden "
  17.      "ersetzt. MUI 3 ist abwärtskompatibel mit alten Versionen, alle "
  18.      "sauber geschriebenen MUI Programme werden weiter funktionieren "
  19.      "und automatisch von den neuen Features profitieren."
  20. ))
  21.  
  22. (set #oldmui "\nEs existiert eine alte Version von MUI im Verzeichnis ")
  23.  
  24. (set #oldmuibak
  25. (cat "Das Installationsprogramm wird dieses Verzeichnis umbenennen in "
  26.      "'MUI_old' und für MUI 3 ein neues Verzeichnis erstellen. Alle "
  27.      "Dateien aus der alten Installation bleiben erhalten."
  28.      "\n\nWenn Ihnen MUI 3 gefällt, sollten Sie das 'MUI_old' nach "
  29.      "einiger Zeit löschen."
  30. ))
  31.  
  32. (set #oldmuidel
  33. (cat "Außerdem wurde eine Sicherheitkopie ('MUI_old') einer früheren "
  34.      "MUI Installation gefunden. Es wird angenommen, daß diese Kopie "
  35.      "aktuell ist, deswegen wird keine neue mehr angelegt. "
  36.      "Falls Sie fortfahren, werden demnach alle Dateien im Verzeichnis "
  37. ))
  38.  
  39. (set #oldmuidel2 "gelöscht und ersetzt.")
  40.  
  41. (set #destdir
  42. (cat "Bitte wählen Sie einen Platz für MUI 3. "
  43.      "Ein Verzeichnis namens 'MUI' wird automatisch erzeugt. "
  44.      "Der minimale Platzbedarf beträgt 500 kB, "
  45.      "eine Komplett-Installation benötigt etwa 2.5 MB."
  46. ))
  47.  
  48. (set #destexists
  49. (cat "Im gewählten Zielverzeichnis existiert bereits eine MUI-Schublade. "
  50.      "Wenn Sie fortfahren, wird der Inhalt dieser Schublade gelöscht und "
  51.      "durch die neuen Dateien ersetzt."
  52. ))
  53.  
  54. (set #guideask
  55. (cat "Bitte wählen Sie die Sprache(n) für die AmigaGuide Dokumentation aus. "
  56.      "Diese wird unter anderem für die Online-Hilfe im Voreinsteller und "
  57.      "Screen Manager benötigt."
  58. ))
  59.  
  60. (set #dviask
  61. (cat "Bitte wählen Sie die Sprache(n) für die DVI Dokumentation aus. "
  62.      "DVI Dokumentationen werden hauptsächlich zum Ausdrucken benötigt."
  63. ))
  64.  
  65. (set #imgask
  66. (cat "Wählen Sie die zusätzlichen Image-Pakete aus, die Sie installieren möchten."
  67. ))
  68.  
  69. (set #nainfo1 "Mit")
  70. (set #nainfo2 "(n/a)")
  71. (set #nainfo3 "markierte Elemente sind aus Platzmangel im aktuellen Installations-Archiv nicht verfügbar.")
  72.  
  73. (set #copydoc1 "Kopiere")
  74. (set #copydoc2 "Dokumentation")
  75.  
  76. (set #copydoc3
  77. (cat "ist im aktuellen Installations-Archiv nicht verfügbar, sie "
  78.      "wurden aus Platzmangel weggelassen. MUI benötigt diese "
  79.      "Dateien nicht zur korrekten Funktion."
  80. ))
  81.  
  82. ))
  83.  
  84.  
  85.  
  86. ;=============================================================================
  87. ; English strings
  88.  
  89. (if (= @language "english")
  90. (
  91.  
  92. (set #intro
  93. (cat "This program lets you install release 3 of MagicUserInterface "
  94.         "on your system. It can be used to upgrade an older release or to "
  95.      "install from scratch. MUI 3 is backwards compatible with previous "
  96.      "versions, all properly written MUI applications will continue to "
  97.      "work and will automatically benefit from several new features."
  98. ))
  99.  
  100. (set #oldmui "\nThere is already a version of MUI installed in the directory ")
  101.  
  102. (set #oldmuibak
  103. (cat "The installer program will rename this directory away to "
  104.      "'MUI_old' and create a different directory for the new MUI 3 "
  105.      "installation. No files of your old installation will be overwritten."
  106.      "\n\nYou should delete the 'MUI_old' directory after you have given "
  107.      "MUI 3 a try and decided that you like it!"
  108. ))
  109.  
  110. (set #oldmuidel
  111. (cat "Furthermore, a backup of a previously installed MUI was found. "
  112.      "The installation utility assumes that this backup is current "
  113.      "and will not backup your MUI installation again. If you proceed, "
  114.      "all the files in the directory"
  115. ))
  116.  
  117. (set #oldmuidel2 "will be deleted and updated.")
  118.  
  119. (set #destdir
  120. (cat "Please select a place for the MUI 3 package. "
  121.      "A drawer called 'MUI' will be created here. "
  122.      "The minimum space required is about 500 kB, "
  123.      " a complete installation takes 2.5 MB."
  124. ))
  125.  
  126. (set #destexists
  127. (cat "A MUI drawer does already exists in your selected destination directory. "
  128.      "By proceeding, you indicate that you wish to delete the "
  129.      "contents of this drawer and replace them with the new "
  130.      "installation."
  131. ))
  132.  
  133. (set #guideask
  134. (cat "Select the language(s) of AmigaGuide documentations you wish "
  135.      "to install. You must choose at least one language if you want "
  136.      "to use online help with the MUI preferences programs."
  137. ))
  138.  
  139. (set #dviask
  140. (cat "Select the language(s) of DVI documentations you wish "
  141.      "to install. DVI docs are mainly useful for printing."
  142. ))
  143.  
  144. (set #imgask
  145. (cat "Select the image set(s) you wish to install."
  146. ))
  147.  
  148. (set #nainfo1 "Items marked as")
  149. (set #nainfo2 "(n/a)")
  150. (set #nainfo3 "are not available in the current installation archive due to space considerations.")
  151.  
  152. (set #copydoc1 "Copying")
  153. (set #copydoc2 "documenation")
  154.  
  155. (set #copydoc3
  156. (cat "is not present in the current installation archive. "
  157.      "It has probably been left out due to space considerations. "
  158.      "However, MUI will run fine without those files."
  159. ))
  160.  
  161. ))
  162.  
  163.  
  164.  
  165. ;=============================================================================
  166. ; procedure COPYDOC
  167. ;
  168. ; cd_language - language
  169. ; cd_name     - "MUI.guide" or "MUI.dvi"
  170.  
  171. (procedure COPYDOC
  172. (
  173.     (set cdsrc (cat "/Docs/" cd_language "/" cd_name))
  174.     (set cddst (tackon (tackon destination "Docs") cd_language))
  175.  
  176.     (if (<> (exists cdsrc (noreq)) 0)
  177.     (
  178.         (run (cat "copy " "/Docs/" cd_language ".info " (cat cddst ".info") ))
  179.  
  180.         (copyfiles
  181.             (prompt (cat #copydoc1 " " cd_language " " cd_name " " #copydoc2 "..."))
  182.             (source cdsrc)
  183.             (dest cddst)
  184.             (infos)
  185.             (help @copyfiles-help)
  186.         )
  187.     )
  188.     (
  189.         (message cd_name " (" cd_language ") " #copydoc3)
  190.     ))
  191. ))
  192.  
  193.  
  194.  
  195. ;=============================================================================
  196. ; procedure COPYIMAGEDIR
  197. ;
  198. ; ci_dir - image dir name
  199.  
  200. (procedure COPYIMAGEDIR
  201. (
  202.     (set cdsrc (cat "/Images/" ci_dir))
  203.     (set cddst (tackon (tackon destination "Images") ci_dir))
  204.  
  205.     (if (<> (exists cdsrc (noreq)) 0)
  206.     (
  207.         (copyfiles
  208.             (prompt (cat #copydoc1 " " ci_dir "..."))
  209.             (source cdsrc)
  210.             (dest cddst)
  211.             (all)
  212.             (help @copyfiles-help)
  213.         )
  214.     )
  215.     (
  216.         (message ci_dir " " #copydoc3)
  217.     ))
  218. ))
  219.  
  220.  
  221.  
  222. ;=============================================================================
  223. ; Say hello
  224.  
  225. (set @default-dest "SYS:")
  226. (message #intro)
  227.  
  228.  
  229.  
  230. ;=============================================================================
  231. ; Check for an old MUI installation
  232.  
  233. (complete 4)
  234.  
  235. (if (<> (exists "mui:" (noreq)) 0)
  236. (
  237.     (set @default-dest (expandpath "mui:/"))
  238.     (set muidir (tackon @default-dest "MUI"))
  239.     (set olddir (tackon @default-dest "MUI_old"))
  240.  
  241.     (run "assign mui: remove")
  242.  
  243.     (if (<> (exists olddir (noreq)) 0)
  244.     (
  245.         (message #oldmui "'" @default-dest "'. " #oldmuidel " '" muidir "' " #oldmuidel2)
  246.         (run (cat "delete " muidir " all >nil:"))
  247.         (run (cat "delete " muidir ".info >nil:"))
  248.     )
  249.     (
  250.         (message #oldmui "'" @default-dest "'." #oldmuibak)
  251.         (rename muidir olddir)
  252.         (rename (cat muidir ".info") (cat olddir ".info"))
  253.     ))
  254. ))
  255.  
  256.  
  257. ;***** Old File Deletion
  258. ;sys:libs/muimaster.library
  259. ;sys:classes/mui
  260. ;sys:classes/images/mui#?.image
  261. ;sys:prefs/mui
  262. ;sys:prefs/MUI-Images
  263. ;sys:locale/catalogs/Deutsch/MUI.catalog
  264.  
  265.  
  266.  
  267. ;=============================================================================
  268. ; Ask for destination directory
  269.  
  270. (set @default-dest
  271.     (askdir
  272.         (prompt #destdir)
  273.         (help @askdir-help)
  274.         (default @default-dest)
  275.     )
  276. )
  277.  
  278. (set @default-dest (expandpath @default-dest))
  279. (set destination (tackon @default-dest "MUI"))
  280.  
  281. (if (<> (exists destination) 0)
  282. (
  283.     (message #destexists)
  284.     (run (cat "delete " destination " all >nil:"))
  285.     (run (cat "delete " destination ".info >nil:"))
  286. ))
  287.  
  288.  
  289.  
  290. ;=============================================================================
  291. ; Lets go, create destination directory, copy main files and libs
  292.  
  293. (complete 4)
  294.  
  295. (makedir destination (help @makedir-help) (infos))
  296. (run (cat "copy " "//MUI.info \"" destination ".info\""))
  297.  
  298. (complete 8)
  299.  
  300. (copyfiles
  301.     (prompt "Copying main files...")
  302.     (source "/")
  303.     (pattern "(ReadMe|LiesMich|MUI|PSI)")
  304.     (dest destination)
  305.     (infos)
  306.     (help @copyfiles-help)
  307. )
  308.  
  309. (complete 12)
  310.  
  311. (copyfiles
  312.     (prompt "Copying libraries and classes...")
  313.     (source "/Libs")
  314.     (all)
  315.     (dest (tackon destination "Libs"))
  316.     (infos)
  317.     (help @copyfiles-help)
  318. )
  319. (run (cat "copy " "/Libs.info \"" destination "\""))
  320.  
  321. ;=============================================================================
  322. ; Icons Drawer
  323.  
  324. (complete 16)
  325.  
  326. (if (<> (exists "/Icons" (noreq)) 0)
  327. (
  328.     (copyfiles
  329.         (prompt "Copying default icons...")
  330.         (source "/Icons")
  331.         (dest (tackon destination "Icons"))
  332.         (all)
  333.         (infos)
  334.         (help @copyfiles-help)
  335.     )
  336.     (run (cat "copy " "/Icons.info \"" destination "\""))
  337. )
  338. )
  339.  
  340.  
  341. ;=============================================================================
  342. ; Docs Drawer
  343.  
  344. (complete 20)
  345.  
  346. (if (<> (exists "/Docs" (noreq)) 0)
  347. (
  348.     (copyfiles
  349.         (prompt "Creating Docs Drawer...")
  350.         (source "/Docs")
  351.         (dest (tackon destination "Docs"))
  352.         (choices "Registration" "Changes" "ImageDesign" "Preview")
  353.         (infos)
  354.         (help @copyfiles-help)
  355.     )
  356.     (run (cat "copy " "/Docs.info \"" destination "\""))
  357.  
  358.     (if (<> (exists "/Docs/English/MUI.guide") 0)
  359.     ((set guide_english "English") (if (= @language "English") ((set defchoice 1))) )
  360.     ((set guide_english (cat "English " #nainfo2))))
  361.  
  362.     (if (<> (exists "/Docs/Deutsch/MUI.guide") 0)
  363.     ((set guide_german "Deutsch") (if (= @language "Deutsch") ((set defchoice 2))) )
  364.     ((set guide_german (cat "Deutsch " #nainfo2))))
  365.  
  366.     (if (<> (exists "/Docs/Français/MUI.guide") 0)
  367.     ((set guide_french "Français") (if (= @language "Français") ((set defchoice 4))) )
  368.     ((set guide_french (cat "Français " #nainfo2))))
  369.  
  370.     (set choice
  371.         (askoptions
  372.             (prompt (cat #guideask " " #nainfo1 " " #nainfo2 " " #nainfo3))
  373.             (choices guide_english guide_german guide_french)
  374.             (default defchoice)
  375.             (help @askoptions-help)
  376.         )
  377.     )
  378.  
  379.     (set cd_name "MUI.guide")
  380.  
  381.     (complete 24)
  382.  
  383.     (if (<> 0 (BITAND choice 1))
  384.     (
  385.         (set cd_language "English")
  386.         (COPYDOC)
  387.     ))
  388.  
  389.     (complete 28)
  390.  
  391.     (if (<> 0 (BITAND choice 2))
  392.     (
  393.         (set cd_language "Deutsch")
  394.         (COPYDOC)
  395.     ))
  396.  
  397.     (complete 32)
  398.  
  399.     (if (<> 0 (BITAND choice 4))
  400.     (
  401.         (set cd_language "Français")
  402.         (COPYDOC)
  403.     ))
  404.  
  405.     (complete 36)
  406.  
  407.     (if (<> (exists "/Docs/English/MUI.dvi") 0)
  408.     ((set dvi_english "English"))
  409.     ((set dvi_english (cat "English " #nainfo2))))
  410.  
  411.     (if (<> (exists "/Docs/Deutsch/MUI.dvi") 0)
  412.     ((set dvi_german "Deutsch"))
  413.     ((set dvi_german (cat "Deutsch " #nainfo2))))
  414.  
  415.     (if (<> (exists "/Docs/Français/MUI.dvi") 0)
  416.     ((set dvi_french "Français"))
  417.     ((set dvi_french (cat "Français " #nainfo2))))
  418.  
  419.     (set choice
  420.         (askoptions
  421.             (prompt (cat #dviask " " #nainfo1 " " #nainfo2 " " #nainfo3))
  422.             (choices dvi_english dvi_german dvi_french)
  423.             (default defchoice)
  424.             (help @askoptions-help)
  425.         )
  426.     )
  427.  
  428.     (set cd_name "MUI.dvi")
  429.  
  430.     (complete 40)
  431.  
  432.     (if (<> 0 (BITAND choice 1))
  433.     (
  434.         (set cd_language "English")
  435.         (COPYDOC)
  436.     ))
  437.  
  438.     (complete 44)
  439.  
  440.     (if (<> 0 (BITAND choice 2))
  441.     (
  442.         (set cd_language "Deutsch")
  443.         (COPYDOC)
  444.     ))
  445.  
  446.     (complete 48)
  447.  
  448.     (if (<> 0 (BITAND choice 4))
  449.     (
  450.         (set cd_language "Français")
  451.         (COPYDOC)
  452.     ))
  453. )
  454. )
  455.  
  456.  
  457.  
  458. ;=============================================================================
  459. ; Images Drawer
  460.  
  461. (complete 52)
  462.  
  463. (if (<> (exists "/Images" (noreq)) 0)
  464. (
  465.     (if (<> (exists "/Images/XEN") 0)
  466.     ((set img_xen "Martin 'MagicWB' Huttenloher"))
  467.     ((set img_xen (cat "Martin 'MagicWB' Huttenloher " #nainfo2))))
  468.  
  469.     (if (<> (exists "/Images/Goonie") 0)
  470.     ((set img_goonie "Andreas 'Goonie' Schildbach"))
  471.     ((set img_goonie (cat "Andreas 'Goonie' Schildbach " #nainfo2))))
  472.  
  473.     (if (<> (exists "/Images/KT") 0)
  474.     ((set img_kt "Christian 'Kochtopf' Scholz"))
  475.     ((set img_kt (cat "Christian 'Kochtopf' Scholz " #nainfo2))))
  476.  
  477.     (if (<> (exists "/Images/WD") 0)
  478.     ((set img_wd "Walter Dörwald"))
  479.     ((set img_wd (cat "Walter Dörwald " #nainfo2))))
  480.  
  481.     (if (<> (exists "/Images/kmel") 0)
  482.     ((set img_kmel "Klaus 'kmel' Melchior"))
  483.     ((set img_kmel (cat "Klaus 'kmel' Melchior " #nainfo2))))
  484.  
  485.     (set choice
  486.         (askoptions
  487.             (prompt (cat #imgask " " #nainfo1 " " #nainfo2 " " #nainfo3))
  488.             (choices img_xen img_goonie img_kt img_wd img_kmel)
  489.             (help @askoptions-help)
  490.         )
  491.     )
  492.  
  493.     (complete 56)
  494.  
  495.     (makedir (tackon destination "Images"))
  496.     (run (cat "copy " "/Images.info \"" destination "\""))
  497.  
  498.     (complete 60)
  499.  
  500.     (if (<> 0 (BITAND choice 1))
  501.     (
  502.         (set ci_dir "XEN")
  503.         (COPYIMAGEDIR)
  504.     ))
  505.  
  506.     (complete 64)
  507.  
  508.     (if (<> 0 (BITAND choice 2))
  509.     (
  510.         (set ci_dir "Goonie")
  511.         (COPYIMAGEDIR)
  512.     ))
  513.  
  514.     (complete 68)
  515.  
  516.     (if (<> 0 (BITAND choice 4))
  517.     (
  518.         (set ci_dir "KT")
  519.         (COPYIMAGEDIR)
  520.     ))
  521.  
  522.     (complete 72)
  523.  
  524.     (if (<> 0 (BITAND choice 8))
  525.     (
  526.         (set ci_dir "WD")
  527.         (COPYIMAGEDIR)
  528.     ))
  529.  
  530.     (complete 76)
  531.  
  532.     (if (<> 0 (BITAND choice 16))
  533.     (
  534.         (set ci_dir "kmel")
  535.         (COPYIMAGEDIR)
  536.     ))
  537.  
  538.     (complete 80)
  539.  
  540.     (set ci_dir "Misc")
  541.     (COPYIMAGEDIR)
  542. )
  543. )
  544.  
  545.  
  546.  
  547. ;=============================================================================
  548. ; Rexx Drawer
  549.  
  550. (complete 84)
  551.  
  552. (if (<> (exists "/Rexx" (noreq)) 0)
  553. (
  554.     (copyfiles
  555.         (prompt "Installing example ARexx scripts...")
  556.         (source "/Rexx")
  557.         (dest (tackon destination "Rexx"))
  558.         (infos)
  559.         (all)
  560.         (help @copyfiles-help)
  561.     )
  562.     (run (cat "copy " "/Rexx.info \"" destination "\""))
  563. )
  564. )
  565.  
  566.  
  567. ;=============================================================================
  568. ; Catalogs
  569.  
  570. (complete 86)
  571.  
  572. (if (<> (exists "/Locale" (noreq)) 0)
  573. (
  574.     (copyfiles
  575.         (prompt "Installing catalogs...")
  576.         (source "/Locale")
  577.         (dest (tackon destination "Locale"))
  578.         (all)
  579.         (infos)
  580.         (help @copyfiles-help)
  581.     )
  582.     (run (cat "copy " "/Locale.info \"" destination "\""))
  583. )
  584. )
  585.  
  586.  
  587.  
  588. ;=============================================================================
  589. ; Presets
  590.  
  591. (complete 88)
  592.  
  593. (if (<> (exists "/Presets" (noreq)) 0)
  594. (
  595.     (copyfiles
  596.         (prompt "Installing presets...")
  597.         (source "/Presets")
  598.         (dest (tackon destination "Presets"))
  599.         (all)
  600.         (infos)
  601.         (help @copyfiles-help)
  602.     )
  603.     (run (cat "copy " "/Presets.info \"" destination "\""))
  604. )
  605. )
  606.  
  607.  
  608.  
  609. ;=============================================================================
  610. ; Patterns
  611.  
  612. (complete 90)
  613.  
  614. (if (<> (exists "/Patterns" (noreq)) 0)
  615. (
  616.     (copyfiles
  617.         (prompt "Installing patterns...")
  618.         (source "/Patterns")
  619.         (dest (tackon destination "Patterns"))
  620.         (all)
  621.         (infos)
  622.         (help @copyfiles-help)
  623.     )
  624.     (run (cat "copy " "/Patterns.info \"" destination "\""))
  625. )
  626. )
  627.  
  628.  
  629.  
  630. ;=============================================================================
  631. ; Demos
  632.  
  633. (complete 92)
  634.  
  635. (if (<> (exists "/Demos" (noreq)) 0)
  636. (
  637.     (copyfiles
  638.         (prompt "Installing demonstration programs...")
  639.         (source "/Demos")
  640.         (dest (tackon destination "Demos"))
  641.         (infos)
  642.         (all)
  643.         (help @copyfiles-help)
  644.     )
  645.     (run (cat "copy " "/Demos.info \"" destination "\""))
  646. )
  647. )
  648.  
  649.  
  650.  
  651. ;=============================================================================
  652. ; Startup Sequence
  653.  
  654. (complete 96)
  655.  
  656. (startup "MUI"
  657.     (prompt "Some commands will be added to your \"s:user-startup\" file.")
  658.     (help @startup-help)
  659.     (command "if exists \"" destination "\"\n")
  660.     (command "   assign MUI: \"" destination "\"\n")
  661.     (command "   if exists MUI:Libs\n")
  662.     (command "      assign add LIBS: MUI:Libs\n")
  663.     (command "   endif\n")
  664.     (command "   if exists MUI:Locale\n")
  665.     (command "      assign add LOCALE: MUI:Locale\n")
  666.     (command "   endif\n")
  667.     (command "   version >nil: exec.library 39\n")
  668.     (command "   if not warn\n")
  669.     (command "      if exists MUI:Docs\n")
  670.     (command "         if exists HELP:dummy ; do not remove\n")
  671.     (command "         endif                ; this entry!\n")
  672.     (command "         assign add HELP: MUI:Docs\n")
  673.     (command "      endif\n")
  674.     (command "   endif\n")
  675.     (command "endif")
  676. )
  677.  
  678.  
  679. ;=============================================================================
  680. ; Finish
  681.  
  682. (complete 99)
  683.  
  684. (run (cat "assign mui: " "\"" destination "\""))
  685.  
  686.  
  687. ;***** Finished
  688.  
  689. (complete 100)
  690.  
  691. (exit "Please reboot your computer before trying to start any MUI programs.")
  692.